Information processing apparatus and information processing method

ABSTRACT

An information processing apparatus includes: a first specifying unit that specifies a size of a display region of a video delivered by streaming, the video having a bit rate that is changeable during a playback; a second specifying unit that specifies a data amount of data temporarily stored for a period of the video to be next played back; and a third specifying unit that specifies a bandwidth in reception of the data. The information processing apparatus further includes a determining unit that determines a bit rate of the video that is played back based on the size, the data amount, and the bandwidth that are specified.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is based on and claims priority under 35 USC 119 fromJapanese Patent Application No. 2016-36943 filed on Feb. 29, 2016.

BACKGROUND

1. Technical Field

The present invention relates to an information processing apparatus andan information processing method.

2. Related Art

In a technique of playing back a video delivered by streaming, aplayback quality such as a resolution level of a video and playbackcontinuity (in which the playback is not interrupted) is important.

SUMMARY

According to an aspect of the invention, there is provided aninformation processing device, including: a first specifying unit thatspecifies a size of a display region of a video delivered by streaming,the video having a bit rate that is changeable during a playback; asecond specifying unit that specifies a data amount of data temporarilystored for a period of the video to be next played back; a thirdspecifying unit that specifies a bandwidth in reception of the data; anda determining unit that determines a bit rate of the video that isplayed back based on the size, the data amount, and the bandwidth thatare specified.

BRIEF DESCRIPTION OF THE DRAWINGS

Exemplary embodiments of the present invention will be described indetail based on the following figures, wherein:

FIG. 1 is a diagram illustrating an overall configuration of a videodelivery system according to an exemplary embodiment;

FIG. 2 is a diagram illustrating a stream delivery mechanism;

FIG. 3 is a diagram illustrating a hardware configuration of a smartphone;

FIG. 4 is a diagram illustrating a hardware configuration of a videodelivering apparatus;

FIG. 5 is a diagram illustrating functional configurations implementedby respective apparatuses;

FIG. 6A is a diagram illustrating an exemplary video displayed on adisplay region;

FIG. 6B is a diagram illustrating an exemplary video displayed on adisplay region;

FIG. 6C is a diagram illustrating an exemplary video displayed on adisplay region;

FIG. 7 is a diagram illustrating an exemplary bit rate table;

FIG. 8 is a diagram illustrating an exemplary operation process ofrespective apparatuses in a stream delivery process;

FIG. 9 is a diagram illustrating a functional configuration implementedby a smart phone according to a modified example;

FIG. 10 is a diagram illustrating functional configurations implementedby respective apparatuses according to a modified example;

FIG. 11 is a diagram illustrating an exemplary file format table;

FIG. 12 is a diagram illustrating an overall configuration of a videodelivery system according to a modified example;

FIG. 13 is a diagram illustrating a hardware configuration of a serverapparatus;

FIG. 14 is a diagram illustrating functional configurations implementedby respective apparatuses according to a modified example;

FIG. 15 is a diagram illustrating a functional configuration implementedby a smart phone according to a modified example; and

FIG. 16 is a diagram illustrating an exemplary displayed stream playbackstate.

DETAILED DESCRIPTION [1] Exemplary Embodiments

FIG. 1 illustrates an overall configuration of a video delivery system 1according to an exemplary embodiment. The video delivery system 1 is asystem that performs stream delivery of a video to a playback apparatusused by the user. The stream delivery of the video refers to delivery ofa video by a mechanism that sequentially plays back segment dataindicating a part of a video while transceiving the segment data in aplayback order. The video delivery system 1 includes a communicationline 2, a smart phone 10, and a video delivering apparatus 20.

The communication line 2 is a system in which exchange of data isrelayed between device such as a mobile communication network or theInternet. The smart phone 10 is connected to the communication line 2 ina wireless manner, and the video delivering apparatus 20 is connected tothe communication line 2 in a wired manner (it is an example, and theymay be connected by any of wireless and wired manners).

The smart phone 10 is a playback device that plays back a video that isdelivered by streaming in the video delivery system 1. The smart phone10 is carried by the user and used in various places. The videodelivering apparatus 20 is an information processing apparatus thatstores a plurality of pieces of segment data indicating one video as awhole and performs stream delivery of a video by sequentiallytransmitting the segment data in the playback order. One segment dataare data indicating a portion of, for example, about 1 to 10 secondsamong the entire the video.

In the video delivery system 1, a video that conforms to a standardcalled, for example, Moving Picture Experts Group (MPEG)-DynamicAdaptive Streaming over HTTP (DASH) and has a bit rate that can bechanged during the playback thereof is delivered by streaming. In thestream delivery of the exemplary embodiment, a plurality of bit ratesare determined in advance.

FIG. 2 illustrates a stream delivery mechanism. The video deliveringapparatus 20 according to the exemplary embodiment stores segment datagroups A1, A2, and A3 indicating videos having “high,” “intermediate,”and “low” bit rates, respectively. The bit rate refers to a data amount(having a unit of megabits per seconds (Mbps) or megabytes (MB/sec) thatis transceived at intervals of one second.

In the videos indicated by the segment data groups, as the bit rateincreases, the resolution and the frame rate of the video increase. Thesmart phone 10 designates the bit rate of the video to be delivered whenrequesting the stream delivery of the video. The video deliveringapparatus 20 sequentially reads the segment data from the segment datagroup of the designated bit rate, and transmits the read segment data.The smart phone 10 temporarily stores (caches) the received segmentdata, and reads and plays back the cached segment data.

Further, when the smart phone 10 designates a different bit rate fromthat of a video being played back during the playback of the video andrequests delivery of segment data of the different bit rate, the videodelivering apparatus 20 receives the request, and transmits the segmentdata of the designated new bit rate. Upon receiving the segment data,the smart phone 10 plays back the video indicated by the segment data ofthe new bit rate, subsequently to the video indicated by the segmentdata of the current bit rate. Accordingly, the smart phone 10 displaysthe video in which the bit rate can be changed during the playback. Oneof the features of the exemplary embodiment of the present inventionlies in the bit rate decision method. The decision method will bedescribed later in detail.

FIG. 3 illustrates a hardware configuration of the smart phone 10. Thesmart phone 10 is a computer that includes a central processing unit(CPU) 11, a random access memory (RAM) 12, a read only memory (ROM) 13,a network interface card (NIC) 14, a flash memory 15, a touch screen 16,a speaker 17, and a sensor 18. The CPU 11 controls operations of therespective units by executing a program stored in the ROM 13 or theflash memory 15 using the RAM 12 as a work area. The NIC 14 includes anantenna, a communication circuit, and the like, and performs wirelesscommunication that conforms to, for example, a mobile communicationstandard.

The flash memory 15 stores data and a program which the CPU 11 uses forcontrol. In this exemplary embodiment, a browser program is included asthe program, and a function of the exemplary embodiment of the presentinvention which will be described later is implemented by Java (aregistered trademark) script executed on the browser. The presentinvention is not limited to this exemplary embodiment, and anapplication program that implements the function of the presentinvention may be stored. The touch screen 16 includes a display servingas a display unit and a touch panel installed on the surface of thedisplay, and displays an image and receives an operation from the user.The speaker 17 converts audio data indicating a sound into an analogsignal and outputs a sound. The sensor 18 is, for example, a three-axisgeomagnetic sensor, and supplies data indicating an inclination of itsown apparatus to the CPU 11.

FIG. 4 illustrates a hardware configuration of the video deliveringapparatus 20. The video delivering apparatus 20 is a computer thatincludes a CPU 21, a RAM 22, a ROM 23, a NIC 24, and a hard disk drive(HDD) 25. The CPU 21 to the ROM 23 are the same hardware as thecomponents having the same names illustrated in FIG. 3. The NIC 24includes a communication circuit, and performs communication through thecommunication line 2. The HDD 25 stores data and a program which the CPU21 uses for control.

By controlling the respective units by executing the programs throughthe CPUs of the respective apparatuses included in the video deliverysystem 1, functions to be described below are implemented.

FIG. 5 illustrates functional configurations implemented by therespective apparatuses. The smart phone 10 includes a bit rateinformation acquiring unit 101, a display region size specifying unit102, a cache amount specifying unit 103, a bandwidth specifying unit104, a bit rate determining unit 105, a delivery requesting unit 106, asegment data receiving unit 107, a temporary storage unit 108, and avideo playing-back unit 109. The video delivering apparatus 20 includesa segment data storage unit 201, a bit rate information storage unit202, a bit rate information transmitting unit 203, a segment datareading unit 204, and a segment data transmitting unit 205.

The segment data storage unit 201 of the video delivering apparatus 20stores the segment data of the video delivered by streaming by its ownapparatus. The segment data storage unit 201 stores the segment dataindicating the video of the plurality of bit rates as described abovewith reference to FIG. 2. Since each piece of the segment data has asmall communication amount, each piece of the segment data is encoded(compressed), for example, as data indicating a reference frame and adifference with the frame.

The bit rate information storage unit 202 stores bit rate information(for example, a media presentation description (MPD) in MPEG-Dash)indicating the plurality of bit rates of the video stored in the segmentdata storage unit 201 and delivered by streaming by its own apparatus.In the example of FIG. 2, the bit rate information storage unit 202stores the bit rate information indicating the bit rate of the videoindicated by each of the segment data groups A1, A2, and A3. Forexample, when the segment data of the video are stored by an operator ofthe video delivering apparatus 20, the bit rate information is createdand stored by the operator.

In the case of requesting the stream delivery of the video, the bit rateinformation acquiring unit 101 of the smart phone 10 acquires the bitrate information indicating the plurality of bit rates of the video. Forexample, a link to the video that is delivered by streaming by the videodelivering apparatus 20 is attached in a web page displayed on the smartphone 10, and when the user performs an operation of selecting the link,the bit rate information acquiring unit 101 transmits request data forrequesting the bit rate information of the video to the video deliveringapparatus 20. The request data include information (for example, auniform resource locator (URL) of a file (for example, an MPD inMPEG-DASH)) specifying the video.

Upon receiving the request data transmitted from the smart phone 10, thebit rate information transmitting unit 203 of the video deliveringapparatus 20 reads the bit rate information of the video specified bythe request data, that is, the bit rate information of the video storedin its own apparatus from the bit rate information storage unit 202 andtransmits the read bit rate information of the video to the requestsource (the smart phone 10 in this exemplary embodiment). The bit rateinformation acquiring unit 101 acquires the bit rate informationtransmitted as described above. The bit rate information acquiring unit101 supplies the acquired bit rate information to the bit ratedetermining unit 105.

The bit rate determining unit 105 determines any one of the plurality ofbit rates indicated by the bit rate information acquired by the bit rateinformation acquiring unit 101 as the bit rate of the video to be playedback. The bit rate decision method will be described later in detail.The bit rate determining unit 105 repeatedly determines the bit rate atdetermined time intervals. For example, an interval of a time (forexample, intervals of one second when a playback time is 2 seconds orthe like) shorter than a playback time of the video indicated by onepiece of segment data is used as the time interval. Each time the bitrate is determined, the bit rate determining unit 105 notifies thedelivery requesting unit 106 of the determined bit rate.

The delivery requesting unit 106 requests an apparatus (the videodelivering apparatus 20 in this exemplary embodiment) that delivers thevideo by streaming to deliver the video at the bit rate determined bythe bit rate determining unit 105. When the bit rate determined by thebit rate determining unit 105 is changed, the bit rate of the video thatis delivered by streaming by the delivery requesting unit 106 is alsochanged.

When the stream delivery of the video is requested from an externalapparatus, the segment data reading unit 204 of the video deliveringapparatus 20 reads the segment data of the requested video. Uponreceiving designation data transmitted from the smart phone 10, thesegment data reading unit 204 reads a set number of pieces of segmentdata from the segment data group of the bit rate designated by thedesignation data in order from the beginning of the video.

Thereafter, the segment data reading unit 204 repeatedly performs theprocess of reading a set number of pieces of segment data subsequentlyto the read segment data at intervals of a playback time of a part ofthe video indicated by the segment data, which is read one time, or atime shorter than the playback time of the part. When the designated bitrate is changed in the middle, the segment data reading unit 204 reads aset number of pieces of segment data from a part from which a playbackposition is continued among the segment data of the new bit rate. Eachtime the segment data are read, the segment data reading unit 204supplies the read segment data to the segment data transmitting unit205.

The segment data transmitting unit 205 transmits the supplied segmentdata to the designation data transmission source, that is, the requestsource (the smart phone 10 in this exemplary embodiment) that hasrequested the stream delivery of the video. The segment data receivingunit 107 of the smart phone 10 receives the segment data transmittedfrom the video delivering apparatus 20. The segment data receiving unit107 supplies the received segment data to the temporary storage unit108.

The temporary storage unit 108 temporarily stores the segment datareceived by the segment data receiving unit 107 until the part of thevideo indicated by the segment data is played back. When the segmentdata are stored in the temporary storage unit 108, the videoplaying-back unit 109 sequentially reads the stored segment data, andsequentially plays back the video indicated by the read segment data.Since the segment data are encoded as described above, the videoplaying-back unit 109 decodes and plays back the segment data. The videoplaying-back unit 109 causes the played-back video to be displayed on adisplay region but causes the video to be displayed on a differentdisplay region according to a direction of its own apparatus.

FIGS. 6A to 6C illustrate an exemplary video displayed on the displayregion. In FIGS. 6A to 6C, the video is displayed on a display surface161 of the touch screen 16 illustrated in FIG. 2. The display surface161 is a rectangular surface surrounded by long sides 162 and shortsides 163. FIG. 6A illustrates a display region B1 when the smart phone10 is disposed so that the long side 162 of the display surface 161 isalong the vertical direction, and FIG. 6B illustrates a display regionB2 when the smart phone 10 is disposed so that the long side 162 of thedisplay surface 161 is along the horizontal direction. A video C1 inwhich a person is shown is displayed on both of the display regions B1and B2. As described above, the video playing-back unit 109 causes thevideo to be displayed on the display region B1 or B2 according to aninclination of its own device.

The display region size specifying unit 102 of the smart phone 10specifies the size of the display region of the video that is deliveredby streaming. The display region size specifying unit 102 is an exampleof a “first specifying unit” according to the exemplary embodiment ofthe present invention. The display region size specifying unit 102transmits an inquiry about a type of the display region (one of thedisplay regions B1 and B2) in which the video is displayed to the videoplaying-back unit 109. Upon receiving the inquiry, the videoplaying-back unit 109 notifies the display region size specifying unit102 of the type of the display region in which the video is displayed.The display region size specifying unit 102 specifies the sizecorresponding to the type of the display region that is notified of asthe size of the display region.

When the display region B1 is notified of as the type of the displayregion, the display region size specifying unit 102 specifies a valueobtained by multiplying a length L1 of the long side by a length L2 ofthe short side illustrated in FIG. 6A, that is, an area of the displayregion as the size of the display region. Further, when the displayregion B2 is notified of as the type of the display region, the displayregion size specifying unit 102 specifies a value obtained bymultiplying a length L3 of the long side by a length L4 of the shortside illustrated in FIG. 6B as the size of the display region.

The short side of the display region B1 contacts with the long side 162of the display surface 161, and the short side of the display region B2contacts with the short side 163 of the display surface 161, but thesize and the arrangement of the display region are not limited to thisexample. The video playing-back unit 109 may cause the video C1 to bedisplayed on a display region B3 in which none of the long side and theshort side contacts with the long side 162 and the short side 163 of thedisplay surface 161, for example, as illustrated in FIG. 6C. In thiscase, the display region size specifying unit 102 specifies a valueobtained by multiplying a length L5 of the long side and a length L6 ofthe short side of the display region B3 as the display region size. Thedisplay region size specifying unit 102 supplies size information(information indicating the area of the display region in this exemplaryembodiment) indicating the size of the display region specified asdescribed above to the bit rate determining unit 105.

The cache amount specifying unit 103 of the smart phone 10 specifies acache amount in the stream playback, that is, a data amount of thesegment data temporarily stored for a period of the video to be nextplayed back, in the video that is played back by streaming. The cacheamount specifying unit 103 is an example of a “second specifying unit”according to the exemplary embodiment of the present invention. Thecache amount specifying unit 103 refers to the segment data temporarilystored in the temporary storage unit 108, and specifies a playback timein which the segment data that are referred to is played back as thecache amount. For example, when the cached segment data indicate a videoof 2 seconds, and 0.5 seconds have been already played back, the cacheamount specifying unit 103 specifies that the video of 1.5 seconds iscached, and supplies information indicating 1.5 seconds to the bit ratedetermining unit 105 as cache amount information.

The bandwidth specifying unit 104 of the smart phone 10 specifies abandwidth in reception of the segment data of the video delivered bystreaming. The bandwidth specifying unit 104 is an example of a “thirdspecifying unit” according to the exemplary embodiment of the presentinvention. The bandwidth specifying unit 104 monitors the segment datareceiving unit 107, and specifies a data size of the segment datareceived per unit time by the segment data receiving unit 107 as thebandwidth. For example, when the segment data of 10 Mbps are receivedfor one second, the segment data receiving unit 107 specifies 10 Mbps asthe bandwidth. The segment data receiving unit 107 supplies bandwidthinformation indicating the specified bandwidth to the bit ratedetermining unit 105.

The display region size specifying unit 102, the cache amount specifyingunit 103, and the bandwidth specifying unit 104 perform the specifyingprocess as the same time intervals as the time intervals at which thebit rate determining unit 105 repeatedly determines the bit rate in thisexemplary embodiment.

The bit rate determining unit 105 determines the bit rate of the videothat is played back based on the size of the display region specified bythe display region size specifying unit 102, the cache amount specifiedby the cache amount specifying unit 103, and the bandwidth specified bythe bandwidth specifying unit 104. For example, the bit rate determiningunit 105 uses a bit rate table in which the size of the display regionis associated with a bit rate range.

FIG. 7 illustrates an exemplary bit rate table. In an example of FIG. 7,five bit rates such as 4.0 Mbps, 2.0 Mbps, 1.0 Mbps, 0.5 Mbps, and 0.3Mbps are assumed to be defined for the stream delivery. In this case, abit rate ranges of “2.0, 1.0, 0.5, 0.3” (whose unit is all Mbps) isassociated with a size of the display region of “less than thresholdvalue Th1.” A bit rate range of “4.0, 2.0, 1.0, 0.5” is associated witha size of the display region of “equal to or larger than threshold valueTh1 and less than threshold value Th2,” and a bit rate range of “4.0,2.0, 1.0” is associated with a size of the display region of “equal toor larger than threshold value Th2.”

The bit rate determining unit 105 reads the bit rate range associatedwith the size of the display region specified by the display region sizespecifying unit 102 from the bit rate table. The bit rate determiningunit 105 narrows the read bit rate range down to a range that does notexceed the bandwidth specified by the bandwidth specifying unit 104. Forexample, when the size of the display region less than the thresholdvalue Th1 is specified, the bit rate determining unit 105 reads the bitrate range of “2.0, 1.0, 0.5, 0.3,” and when the bandwidth of 1.2 Mbpsis specified, since the bit rate of 2.0 Mbps exceeds the specifiedbandwidth, the bit rate determining unit 105 narrows the bit rate rangedown to “1.0, 0.5, 0.3.”

When a playback time (hereinafter, referred to as a “cache playbacktime”), for which the video indicated by the temporarily stored segmentdata having the cache amount specified by the cache amount specifyingunit 103 is played back, is equal to or larger than a set thresholdvalue Th3, the bit rate determining unit 105 selects any one of the bitrates of up to a set number in a descending order within thenarrowed-down range (i.e., selects any one of the bit rate(s) from a setnumber of highest bit rates within the narrowed-down range), anddetermines the selected bit rate as the bit rate of the video that isplayed back. In this exemplary embodiment, the bit rate determining unit105 regards 1 as the set number, that is, selects the highest bit rateand determines the highest bit rate as the bit rate of the video that isplayed back. When the narrowed-down range is “1.0, 0.5, 0.3” as in theabove example, the bit rate determining unit 105 determines “1.0” whichis the highest bit rate among them as the bit rate of the video to beplayed back.

Further, when the cache playback time is less than the threshold valueTh3, the bit rate determining unit 105 selects any one of the bit ratesfrom a set number in an ascending order within the narrowed-down range(i.e., selects any one of the bit rate(s) from a set number of lowestbit rates within the narrowed-down range), and determines the selectedbit rate as the bit rate of the video that is played back. In thisexemplary embodiment, a number that causes all the bit rates excludingthe highest bit rate to be included is set. Thus, the bit ratedetermining unit 105 selects any one of the bit rates excluding thehighest one in the narrowed-down range, and determines the selected bitrate as the bit rate of the video that is played back.

When the narrowed-down range is “1.0, 0.5, 0.3” as in theabove-described example, the bit rate determining unit 105 selects anyone of “0.5, 0.3” excluding “1.0” which is the highest bit rate amongthem, and determines the selected bit rate as the bit rate of the videoto be played back. When any one of two or more bit rates is selected,for example, the bit rate determining unit 105 may consistently selectthe highest bit rate among them when importance is placed on theresolution of the video or may consistently select the lowest bit rateamong them when importance is placed on the continuity of the video.

However, immediately after a video playback operation is received, sincethe segment data are not received yet, the bandwidth is not specified bythe bandwidth specifying unit 104 yet, and the segment data are notcached yet, and thus the cache amount is neither specified by the cacheamount specifying unit 103. In this regard, when the playback isperformed from the beginning of the video, the bit rate determining unit105 determines the bit rate without using the cache amount specified bythe cache amount specifying unit 103 and the bandwidth specified by thebandwidth specifying unit 104 until an initial response period set as aperiod in which the decision method at the initial stage of the playbackis used elapses. In other words, the bit rate determining unit 105determines the bit rate based on only the size of the display regionspecified by the display region size specifying unit 102 until theinitial response period elapses.

For example, a period until the cache amount and the bandwidth areinitially specified is set as the initial response period. Further, aperiod in which the specifying of the cache amount and the bandwidth isexpected to be completed, which is set based on a record of a timerequired for the specifying, may be used as the initial response period.In the initial response period, for example, the bit rate determiningunit 105 selects any one of the bit rates in the bit rate range which isassociated with the specified size of the display region in the bit ratetable illustrated in FIG. 7, and determines the selected bit rate as thebit rate of the video to be played back.

The bit rate determining unit 105 may select the highest bit rate fromthe range when the importance is placed on the resolution of the videoor may select the lowest bit rate from the range when the importance isplaced on the continuity of the video. The present invention is notlimited to this example, and, for example, when the frame rate desiredby the user is set in advance, the bit rate determining unit 105 mayselect a bit rate of a value obtained by multiplying the set frame rateby the specified size of the display region and a coefficient or a bitrate of a value closest to the value and determine the selected bit rateas the bit rate of the video to be played back.

The respective apparatuses included in the video delivery system 1perform a stream delivery process on the video based on theabove-described configuration.

FIG. 8 illustrates an exemplary operation process of the respectiveapparatuses in the stream delivery process. In an example of FIG. 8,when the user performs an operation (for example, an operation ofselecting a link of the video) of causing the smart phone 10 to playback the video that is delivered by streaming, the operation processstarts.

First, the smart phone 10 receives the video playback operation (stepS11). Then, the smart phone 10 (the bit rate information acquiring unit101) requests the video delivering apparatus 20 to transmit the bit rateinformation of the video for which the playback operation is received(step S12). The video delivering apparatus 20 (the bit rate informationtransmitting unit 203) reads the requested bit rate information of thevideo, and transmits the read bit rate information of the video to thesmart phone 10 (step S13). The smart phone 10 (the bit rate informationacquiring unit 101) acquires the transmitted bit rate information (stepS14).

Then, the smart phone 10 (the display region size specifying unit 102)specifies the size of the display region of the video for which theplayback operation is received (step S15). Then, the smart phone 10 (thebit rate determining unit 105) determines the bit rate of the videoaccording to the specified size (step S16). Then, the smart phone 10(the delivery requesting unit 106) requests the video deliveringapparatus 20 to perform the stream delivery of the video at the bit ratedetermined in step S16 (step S17).

The video delivering apparatus 20 (the segment data reading unit 204)reads the segment data indicating the video of the bit rate requested instep S17 (step S21). Then, the video delivering apparatus 20 (thesegment data transmitting unit 205) transmits the segment data read instep S21 to the smart phone 10 (step S22). The smart phone 10 (thesegment data receiving unit 107) receives the segment data transmittedin step S22. The smart phone 10 (the temporary storage unit 108)temporarily stores the received segment data.

Then, the smart phone 10 (the video playing-back unit 109) reads andplays back the segment data temporarily stored, and causes the segmentdata to be displayed on the display region (step S23). Then, the smartphone 10 (the display region size specifying unit 102) specifies thesize of the display region of the played-back video (step S24). Then,the smart phone 10 (the cache amount specifying unit 103) specifies adata amount of the segment data temporarily stored, that is, the cacheamount (step S25).

Then, the smart phone 10 (the bandwidth specifying unit 104) specifiesthe bandwidth in the reception of the segment data (step S26). Then, thesmart phone 10 (the bit rate determining unit 105) determines the bitrate based on the size of the display region specified in step S24, thecache amount specified in step S25, and the bandwidth specified in stepS26 (step S27). The smart phone 10 (the delivery requesting unit 106)requests the video delivering apparatus 20 to deliver the video of thebit rate determined in step S27 (step S28).

The video delivering apparatus 20 (the segment data reading unit 204)returns to step S21, and reads the segment data indicating the video ofthe bit rate requested in step S28. Thereafter, the operation of stepsS21 to S28 is repeated until the user ends the playback operation or thevideo is played back up to the end, and so the playback of the videoends.

In the playback of the video, unless the bit rate is changed, as thedisplay region decreases, the resolution of the video increases. Inother words, when the display region is small, although the bit rate islow, the decrease in the resolution of the video is suppressed comparedto when the display region is large. In this exemplary embodiment, sincethe bit rate corresponding to the specified size of the display regionis determined, compared to when the size of the display region is notconsidered, a phenomenon that, when the display region is small, thevideo of the resolution higher than necessary is displayed, and thewireless communication band is compressed is suppressed.

In this exemplary embodiment, the bit rate is determined based on thespecified cache amount as well. For example, when the cache amount isrelatively large (when the cache playback time is equal to or largerthan the threshold value Th3), a high bit rate is selected, and when thecache amount is relatively small (when the cache playback time is lessthan the threshold value Th3), a low bit rate is selected.

When the cache amount is relatively large, a time taken to download thesegment data is longer than when the cache amount is relatively small,but the playback of the video is more unlikely to be interrupted, andthus when the high bit rate is selected as described above, theresolution of the video is improved while maintaining the continuity ofthe video at a predetermined level. At least the playback quality of thevideo is improved to be higher than when the cache amount (the dataamount of the segment data temporarily stored) is not considered. Here,the playback quality refers to a comprehensive quality including thelevel of the resolution of the video and the playback continuity (inwhich the playback is not interrupted).

On the other hand, when the cache amount is relatively small, if a timetaken to download the segment data is long, the playback of the video ismore likely to be interrupted than when the cache amount is relativelylarge, and thus when the low bit rate is selected as described above, ittakes a time to receive new segment data, but the playback of the videoindicated by the data temporarily stored is unlikely to be interrupted.In other words, the situation in which the playback of the videoindicated by the segment data temporarily stored ends before thereception of the new segment data ends, and thus the video isinterrupted is more likely to occur than when the bit rate is selectedby a different method from that of this exemplary embodiment.

Further, in this exemplary embodiment, the bit rate is determined basedon the specified bandwidth as well. When the bandwidth is high, and thevideo is unlikely to be interrupted, the high bit rate is selected sothat the resolution of the video is increased, and the playback qualityof the video is improved by improving the resolution of the video,whereas when the bandwidth is low, the low bit rate is selected so thatthe video is unlikely to be interrupted, and the playback quality of thevideo is improved by improving the continuity of the video.

In this exemplary embodiment, the bit rate is determined based on thesize of the display region and the cache amount in addition to thebandwidth as described above, and thus the playback quality is improvedto be higher than, for example, when the bit rate is determined in viewof only the bandwidth. Further, in this exemplary embodiment, in theinitial response period, the bit rate is determined without using thecache amount and the bandwidth. As a result, the bit rate is determinedeven in the period in which the cache amount and the bandwidth are notspecified yet, and thus the playback quality of the video is improved tobe higher than when the bit rate is determined without considering thesize of the display region in the initial response period.

[2] Modified Example

The above exemplary embodiment is an example of the present invention,and modifications can be made as follows. The exemplary embodiment andmodified examples may be carried out in combination with each other asnecessary.

[2-1] Bit Rate Decision Method

The bit rate decision method by the bit rate determining unit 105 is notlimited to the above-described example. For example, the bit ratedetermining unit 105 determines the bit rate that leads an increase inthe data amount of the segment data temporarily stored in the temporarystorage unit 108 among the bit rates in the bit rate range narrowed downsimilarly to the example as the bit rate of the video to be played back.

For example, in the state in which the stream delivery is beingperformed at the bit rate of 0.5 Mbps, the bit rate range is assumed tobe narrowed down to “1.0, 0.5, 0.3” (Mbps) based on the size of thedisplay region and the bandwidth using the bit rate table illustrated inFIG. 7. Since the data amount is decreased when 0.3 Mbps among them isselected, the data amount does not change when 0.5 Mbps is selected, butthe data amount is increased when 1.0 Mbps is selected, the bit ratedetermining unit 105 selects 1.0 Mbps and determines 1.0 Mbps as the bitrate of the video to be played back.

For example, when there are a plurality of bit rates that lead theincrease in the data amount, the bit rate determining unit 105 mayselect the highest bit rate and determine the highest bit rate as thebit rate of the video to be played back when the importance is placed onthe resolution of the video or may select the lowest bit rate anddetermine the lowest bit rate as the bit rate of the video to be playedback when the importance is placed on the continuity of the video. Usingthis decision method, the data amount of the segment data stored in thetemporary storage unit 108 is increased due to the change in the bitrate, and thus the playback of the video is more unlikely to beinterrupted than when the bit rate that does not lead to the increase inthe data amount is selected.

The bit rate determining unit 105 may determine any one of the bit ratesthat lead to an increase in the playback time by the segment datatemporarily stored in the temporary storage unit 108 in theabove-described range as the bit rate of the video to be played back. Inthe case in which an increase in the bit rate leads to an increase inthe frame rate and an increase in the resolution as in the example, ifthe number of frames is increased, the data amount is mostly increasedas well, but, for example, there are cases in which the bit rate thatdoes not lead to the increase in the data amount by decreasing theresolution of the video instead of increasing the number of frames isused as well. In this case, using this decision method, since the bitrate at which the data amount is not increased, but the number of framesis increased is determined, the playback of the video is more unlikelyto be interrupted, and the communication load is likely to be reduced.

[2-2] Playback Speed

The bit rate determining unit 105 may change the bit rate decisionmethod according to the playback speed of the video. In the presentmodified example, the level of the bit rate is assumed to correspond toat least one of the level of the resolution of the video and the levelof the frame rate of the video. Specifically, as the bit rate isincreased, either or both of the resolution and the frame rate isincreased. For example, the resolution may not change in a certain bitrate range although the bit rate is increased, for example, when the bitrate is increased to 0.5 Mbps, 1.0 Mbps, 2.0 Mbps, and 4.0 Mbps, theresolution may be increased to 640×360, 854×480, 854×480, and 1280×720.

FIG. 9 illustrates a functional configuration implemented by a smartphone 10 a according to the present modified example. The smart phone 10a includes a playback speed change operation receiving unit 110 inaddition to the units illustrated in FIG. 5. The playback speed changeoperation receiving unit 110 receives an operation of changing theplayback speed of the video that is being played back by streaming.Examples of the operation of changing the playback speed include afast-forward operation, a slow playback operation, and a rewindoperation. Upon receiving the playback speed changing operation, theplayback speed change operation receiving unit 110 notifies the bit ratedetermining unit 105 of content of the received operation.

The bit rate determining unit 105 determines the bit rate based on thecontent of the operation that is reported from the playback speed changeoperation receiving unit 110. For example, when the video is played backat a speed (first-forward playback), the bit rate determining unit 105determines the bit rate in which the resolution or the frame rate islower than that at the time of the normal playback. For example, whenthe bit rate range is narrowed down to the three bit rates of 4.0 Mbps,2.0 Mbps, and 1.0 Mbps according to the size of the display region andthe bandwidth, and the cache amount is equal to or larger than thethreshold value Th3, the bit rate determining unit 105 is assumed toselect the highest bit rate (4.0 Mbps) in the normal playback anddetermines the highest bit rate (4.0 Mbps) as the bit rate of the videoto be played back.

In this case, when the notification indicating that the fast-forwardplayback is performed is received from the playback speed changeoperation receiving unit 110, the bit rate determining unit 105 selectsthe second highest bit rate (2.0 Mbps) or the third highest bit rate(1.0 Mbps) in which the resolution and the frame rate are lower than atthe time of the normal playback and determines the selected bit rate asthe bit rate of the video to be played back. Since the user mostlyperforms the fast-forward playback when the user search for a scenewhich the user wants to view, in this case, it is desirable that a scenethat is played back can be roughly understood, and thus the highresolution and the high frame rate are mostly not necessary.

Using this decision method, at the time of the fast-forward playback,the resolution and the frame rate are lower than at the time of thenormal playback, but the user does not feel uncomfortable mostly due tothe above reason. On the other hand, the communication load of thesegment data is reduced to be smaller, and it is easier to secure a bandfor other stream delivery than when the normal playback is performed,and the bit rate decision method is not changed. Further, compared towhen the normal playback is performed, and the bit rate decision methodis not changed, a time per unit time required to receive the segmentdata is shorter, and the playback time by the segment data temporarilystored when the normal playback is performed after the fast-forwardplayback ends is longer, and thus the playback of the video is unlikelyto be interrupted after the fast-forward playback ends. As a result, theplayback quality is improved to be higher than when the normal playbackis performed, and the bit rate decision method is not changed.

The bit rate determining unit 105 may determine the bit rate based on amagnification ratio in the fast-forward playback. For example, the bitrate determining unit 105 determines the bit rate such that the bit ratethat decreases as the magnification ratio increases is selected. As themagnification ratio increases, the data amount of the transmittedsegment data increases, and thus a time required until the reception iscompleted increases, and the playback is likely to be interrupted. Inthis regard, since the bit rate is determined based on the magnificationratio of the fast-forward playback, the fast-forward playback is moreunlikely to be interrupted, and the playback quality of the video isimproved to be higher than when the magnification ratio is notconsidered.

Further, when the video is played back at a slow speed (slow playback),the bit rate determining unit 105 determines the bit rate in which theresolution or the frame rate is higher than at the time of the normalplayback. For example, when the bit rate range is narrowed down to thethree bit rates of 4.0 Mbps, 2.0 Mbps, and 1.0 Mbps according to thesize of the display region and the bandwidth, and the cache amount isequal to or larger than the threshold value Th3, the bit ratedetermining unit 105 is assumed to select the lowest bit rate (1.0 Mbps)in the normal playback and determines the lowest bit rate (1.0 Mbps) asthe bit rate of the video to be played back.

In this case, when the notification indicating that the slow playback isperformed is received from the playback speed change operation receivingunit 110, the bit rate determining unit 105 selects the second highestbit rate (2.0 Mbps) or the highest bit rate (4.0 Mbps) in which theresolution and the frame rate are higher than at the time of the normalplayback and determines the selected bit rate as the bit rate of thevideo to be played back. Since the user performs the slow playback whenthe user wants to view the scene more carefully, it is desirable thatthe resolution and the frame rate be high. Using this decision method,at the time of the slow playback, the video in which the resolution orthe frame rate is higher than at the time of the normal playback isplayed back. As a result, the playback quality is improved to be higherthan when the normal playback is performed, and the bit rate decisionmethod is not changed.

The bit rate determining unit 105 may determine the bit rate based onthe magnification ratio in the slow playback. For example, the bit ratedetermining unit 105 determines the bit rate such that the bit rate thatincreases as the magnification ratio decreases (that is, the speeddecreases) is selected. In the case of the slow playback, as themagnification ratio decreases, a period until a next frame is playedback increases, and thus although the bit rate is increased, theplayback (the slow playback) of the video is unlikely to be interrupted.In this regard, since the bit rate is determined based on themagnification ratio of the slow playback, the resolution or the framerate of the video and the playback quality of the video are improved tobe higher than when the magnification ratio is not considered.

[2-3] Acquisition of Still Image

A mechanism of acquiring a still image indicating a certain scene of thevideo that is played back may be provided.

FIG. 10 illustrates functional configurations implemented by therespective apparatuses according to the present modified example. In anexample of FIG. 10, a smart phone 10 b including a still imagerequesting unit 111 and a still image display unit 112 in addition tothe units illustrated in FIG. 5 is illustrated. Further, a videodelivering apparatus 20 b including a still image generating unit 206and a still image transmitting unit 207 in addition to the unitsillustrated in FIG. 5 is illustrated.

When the user performs an operation for acquiring a still image of acertain scene of the video that is played back, the still imagerequesting unit 111 of the smart phone 10 b requests the videodelivering apparatus 20 b to transmit the still image of the scene. Infurther detail, when an operation for acquiring a still image of acertain scene of the video is performed while the playback of the videois being performed at a first bit rate, the still image requesting unit111 requests the still image of the scene in a video of a second bitrate higher than the first bit rate.

For example, when the first bit rate (the bit rate of the video duringthe playback) is 1.0 Mbps, the still image requesting unit 111 requeststhe still image using a bit rate that is one step higher than the firstbit rate as the second bit rate. The second bit rate is not limited tothis example and may be the highest bit rate of the video that isdelivered by streaming.

The still image requesting unit 111 makes the request by transmittingrequest data indicating the video in which the still image is requested,the scene of the still image, and the second bit rate to the videodelivering apparatus 20 b. For example, a URL of the video is used asinformation specifying the video, and for example, a playback time ofthe scene is used as information specifying the scene of the stillimage.

Upon receiving the transmitted request data, the still image generatingunit 206 of the video delivering apparatus 20 b generates the stillimage of the scene indicated by the request data with reference to thesegment data of the video of the bit rate indicated by the request data.The still image generating unit 206 decodes the segment data includingthe target scene, and generates the still image of the scene. Forexample, the still image generating unit 206 generates the still imageat a predetermined file format (joint photographic experts group (JPEG),portable network graphics (PNG), or the like).

When the still image requested from the still image requesting unit 111is generated as described above, the still image generating unit 206supplies the generated still image to the still image transmitting unit207. The still image transmitting unit 207 transmits the supplied stillimage, that is, the still image requested from the still imagerequesting unit 111 to the smart phone 10 b serving as the requestsource apparatus. The still image display unit 112 of the smart phone 10b causes the still image transmitted from the video delivering apparatus20 b to be displayed on the display unit (the display of the touchscreen 16) of its own apparatus.

As the bit rate increases, the resolution mostly increases as well. Forthis reason, in the present modified example, the still image of thevideo of the second bit rate is requested, and thus the resolution ofthe still image to be displayed is more easily increased than when thestill image of the video of the first bit rate is requested. On theother hand, the data size of the still image is smaller than the videothat is delivered by streaming, and thus even when the resolution isincreased, the communication load is small, and even when the stillimage having the high resolution is acquired, influence on thecommunication is suppressed to be small.

In the above example, the still image transmitting unit 207 transmitsthe still image generated from the segment data, but the presentinvention is not limited to this example, and, for example, data of astill image of each scene may be stored in a storage unit of its ownapparatus in advance, and the requested still image of the scene may beread from the storage unit and transmitted. The number of formats of thestill image to be transmitted is not limited to one, and two or moreformats (for example, both JPEG and PNG or the like) may be used, andany one of the formats may be selected by the user. Further, when two ormore still images are transmitted, the still image transmitting unit 207may transmit the still images at the same time or different time(different timings).

[2-4] File Format of Still Image

In the above example, the file format of the still image is set inadvance, but the present invention is not limited to this example, andthe file format of the still image may be variable. For example, thestill image requesting unit 111 requests the still image of the fileformat corresponding to the bandwidth specified by the bandwidthspecifying unit 104. For this request, the still image requesting unit111 uses, for example, a file format table in which the bandwidth isassociated with the file format.

FIG. 11 illustrates an exemplary file format table. In an example ofFIG. 11, “JPEG” is associated with the bandwidth of “less than thresholdvalue Th11,” and “PNG” is associated with the bandwidth of “equal to orlarger than threshold value Th11.” When the bandwidth is specified, thebandwidth specifying unit 104 supplies the bandwidth informationindicating the specified bandwidth to the still image requesting unit111. The still image requesting unit 111 requests the video deliveringapparatus 20 b to transmit the still image of the file format that isassociated with the bandwidth indicated by the supplied bandwidthinformation in the file format table.

In the present modified example, in a situation in which the bandwidthis high (equal to or larger than the threshold value Th11), and it iseasy to perform communication of data having a large size, a still imageof a file format of a lossless compression format such as PNG isrequested, and thus a communication amount is large, but an excellentimage quality is secured even when the displayed still image isenlarged. On the other hand, in a situation in which the bandwidth islow (less than the threshold value Th11), and it is not easy to performcommunication of data having a large size, a still image of a fileformat of a lossy compression format such as JPEG is requested, and thusan image quality is bad when the displayed still image is enlarged, butthe communication amount is small, and the time taken until the stillimage is displayed is reduced. As described above, in the presentmodified example, the still image of the file format suitable for thebandwidth is displayed.

In addition to the bandwidth, for example, the file format may be setaccording to the purpose of the still image. For example, when thepurpose is to enable the general user to view a video of a movie, atelevision, or the like, JPEG is desirable, but when the purpose is tocheck a video of a monitoring camera, the video may be enlarged in orderto discern an object that is shown in the video, PNG in which a fineimage can be expressed by a lossless compression scheme is used. In thiscase, for example, the purpose of the video is set in the smart phone 10b through the operation of the user or the like, and the still imagerequesting unit 111 requests the video delivering apparatus 20 b totransmit the still image of the file format corresponding to the setpurpose of the video. Thus, the still image of the file format suitablefor the purpose of a video is displayed.

Further, the user may select the bit rate and the file format serving asthe basis of the still image. In this case, the still image requestingunit 111 displays a selection screen in which the bit rate and the fileformat are selected, and requests the video delivering apparatus 20 b totransmit the still image of the bit rate and the file format selected bythe operation performed on the selection screen. Thus, the still imageof the file format desired by the user is displayed.

[2-5] Server Apparatus

The bit rate may be determined by a server apparatus.

FIG. 12 illustrates an overall configuration of a video delivery system1 c according to the present modified example. The video delivery system1 c includes a communication line 2, a smart phone 10 c, a videodelivering apparatus 20, and a server apparatus 30.

FIG. 13 illustrates a hardware configuration of the server apparatus 30.The server apparatus 30 is a computer that includes a CPU 31, a RAM 32,a ROM 33, a NIC 34, and a HDD 35. The CPU 31 to the HDD 35 are the samehardware as the components having the same names illustrated in FIG. 4.

FIG. 14 illustrates functional configurations implemented by therespective apparatuses according to the present modified example. Thesmart phone 10 c includes a playback operation notifying unit 113 inaddition to the segment data receiving unit 107, the temporary storageunit 108, and the video playing-back unit 109 illustrated in FIG. 5. Theserver apparatus 30 includes the bit rate information acquiring unit101, the display region size specifying unit 102, the cache amountspecifying unit 103, the bandwidth specifying unit 104, the bit ratedetermining unit 105, and the delivery requesting unit 106 illustratedin FIG. 5.

When the operation of playing back the video that is delivered bystreaming is performed on its own apparatus, the playback operationnotifying unit 113 of the smart phone 10 c gives a notificationindicating that the operation is performed to the server apparatus 30.The notification is received by the bit rate information acquiring unit101, the display region size specifying unit 102, the cache amountspecifying unit 103, and the bandwidth specifying unit 104 of the serverapparatus 30. When the notification is received, the bit rateinformation acquiring unit 101 acquires the bit rate information, andthe specifying units perform communication with the corresponding unitsof the smart phone 10 c (the display region size specifying unit 102performs communication with the video playing-back unit 109, the cacheamount specifying unit 103 performs communication with the temporarystorage unit 108, and the bandwidth specifying unit 104 performscommunication with the segment data receiving unit 107), and start thespecifying operation.

Thus, the bit rate determining unit 105 determines the bit rate, and thedelivery requesting unit 106 requests the delivery of the video. At thistime, the delivery requesting unit 106 sets the smart phone 10 c as thedelivery destination of the video, and makes the request. The segmentdata transmitting unit 205 of the video delivering apparatus 20transmits the segment data of the requested video to the smart phone 10c. The video of the bit rate determined by the server apparatus 30 asdescribed above is delivered to the smart phone 10 c. In the presentmodified example, the server apparatus 30 determines the bit ratesimilarly to the smart phone 10 of the example, and thus the bit rate isused such that the playback quality is improved to be higher than whenthe bit rate is determined in view of only the bandwidth.

[2-6] Information Processing Apparatus

The information processing apparatus such as the decision apparatus thatdetermines the bit rate or the playback apparatus that plays back thevideo is not limited to the smart phone or the server apparatus. Forexample, the information processing apparatus may be a tablet device, alaptop PC, or a desktop PC. The smart phone functions as both thedecision apparatus and the playback device, but the server apparatusfunctions as the decision apparatus but does not function as theplayback device and thus requests the video delivering apparatus todeliver the video of the determined bit rate to an external playbackdevice by streaming.

Even in the case of the information processing apparatus that is used ina stationary state such as the desktop PC, the display region size, thecache amount, and the bandwidth change, and thus similarly to the aboveexample, the video of the determined bit rate is delivered by streaming,and thus the playback quality is improved to be higher than when the bitrate is determined in view of only the bandwidth.

[2-7] Display of Specified Information

The specified information described above or the determined bit rate maybe displayed on the playback apparatus that plays back the video.

FIG. 15 illustrates a functional configuration implemented by a smartphone 10 d according to the present modified example. The smart phone 10d includes a stream playback state display unit 114 in addition to theunits illustrated in FIG. 5. In the present modified example, thedisplay region size specifying unit 102, the cache amount specifyingunit 103, and the bandwidth specifying unit 104 supply specifying resultinformation indicating specified results to the stream playback statedisplay unit 114, and notify the stream playback state display unit 114of the bit rate determined by the bit rate determining unit 105.

The stream playback state display unit 114 causes a stream playbackstate indicated by the supplied specifying result information and thebit rate that is notified to be displayed on the display unit of its ownapparatus.

FIG. 16 illustrates an exemplary displayed stream playback state. In anexample of FIG. 16, character strings such as a “display region size,” a“cache amount,” a “bandwidth,” and a “bit rate” and images D1, D2, D3,and D4 indicating states are displayed on the display surface 161 of thetouch screen 16 illustrated in FIG. 2. Each of the images indicates astate according to a position of a circular image.

The image D1 indicates whether the display region size is large or small(as the circular image gets closer to “small” in the drawing, the sizeof the display region is decreased, and as the circular image getscloser to “large” in the drawing, the size of the display region isincreased), and the image D2 indicates whether the cache amount is largeor small. The image D3 indicates whether the bandwidth is high or low,and the image D4 indicates whether the bit rate is high or low. Byviewing the stream playback state, for example, the user notices thatthe bandwidth is low, and the bit rate is low and takes an action ofmoving to a place in which a state of the radio wave is good. If theuser understands that as the display region size decreases, the bit ratedecreases, the user takes an action of increasing the bit rate byincreasing the display region size.

The image D2 may be an operator for receiving an operation of changingthe cache amount. For example, as the circular image moves to the left,the cache amount decreases, whereas as the circular image moves to theright, the cache amount increases. As the cache amount is increased, thecache playback time is likely to become equal to or larger than thethreshold value Th3, and thus the bit rate increases. As describedabove, since the stream delivery state is displayed, the user can takean action of increasing or decreasing the bit rate.

[2-8] Bit Rate

In this exemplary embodiment, as the bit rate increases, the resolutionof the video increases, and the frame rate increases as well, but thepresent invention is not limited to this exemplary embodiment. Forexample, although the bit rate increases, only the frame rate mayincrease with no change in the resolution, or only the resolution mayincrease with no change in the frame rate.

[2-9] Bit Rate Determining Unit

In this exemplary embodiment, the bit rate determining unit 105determines the bit rate selected from predetermined plurality of bitrates as the bit rate of the video to be played back, but the presentinvention is not limited to this exemplary embodiment. For example, whena bit rate in a set range is designated, and the video deliveringapparatus has a function of performing a process of converting video ofa reference bit rate that is stored to a video of a designated bit rate,the bit rate determining unit 105 may determine the bit rate within theset range.

At this time, for example, the bit rate determining unit 105 maydetermine a value of the specified size of the display region, a valueof the cache amount, or a value obtained by substituting a value of thebandwidth into a set formula as the bit rate. As a result, the streamdelivery of the videos of the bit rates of more steps than when theplurality of bit rates are determined in advance is performed.

[2-10] Category of Invention

The present invention is applicable as the video delivering apparatus orthe video delivery system including the video delivering apparatus inaddition to the information processing apparatus such as the smart phoneor the server apparatus. The present invention is applicable as aninformation processing method of carrying out the process implemented bythe respective apparatuses and applicable as a program causing acomputer controlling the respective apparatuses to operate. The programmay be provided in the form of a recording medium such as an opticaldisk storing the program or may be provided in a form in which theprogram is downloaded to a computer via a communication line such as theInternet and installed for use.

The foregoing description of the exemplary embodiments of the presentinvention has been provided for the purposes of illustration anddescription. It is not intended to be exhaustive or to limit theinvention to the precise forms disclosed. Obviously, many modificationsand variations will be apparent to practitioners skilled in the art. Theembodiments were chosen and described in order to best explain theprinciples of the invention and its practical applications, therebyenabling others skilled in the art to understand the invention forvarious embodiments and with the various modifications as are suited tothe particular use contemplated. It is intended that the scope of theinvention be defined by the following claims and their equivalents.

What is claimed is:
 1. An information processing apparatus comprising atleast one hardware processor configured to play a video delivered bystreaming, a bit rate of the video being changeable during playback, andthe at least one hardware processor comprising: a first specifying unitthat specifies a size of a display region of the video; a secondspecifying unit that specifies an amount of data temporarily stored fora period of the video to be next played back; a third specifying unitthat specifies a bandwidth by which the data is received; a determiningunit that determines the bit rate of the video delivered by streamingand played back based on the size, the data amount, and the bandwidththat are specified; and a still image requesting unit that, when anoperation of requesting a still image of a certain scene of the video isperformed while the video is being played back at a first bit rate,requests the still image of the certain scene in a video at a second bitrate higher than the first bit rate, wherein a plurality of bit ratesare defined for stream delivery, wherein when a playback time of thevideo corresponding to the temporarily stored data is equal to or largerthan a threshold value, the determining unit selects in descendingorder, from a bit rate range of the plurality of bit rates thatcorresponds to the specified size of the display region, any one of thebit rates that does not exceed the specified bandwidth, the determiningunit selecting a highest bit rate within the specified bandwidth from abit rate range associated with the specified size of the display regionand wherein the determining unit determines the selected bit rate as thebit rate of the video that is played back.
 2. The information processingapparatus according to claim 1, wherein the determining unit determines,as the bit rate of the video to be next played back, a bit rate withinthe bit rate range that leads to an increase in the amount of thetemporarily stored data.
 3. The information processing apparatusaccording to claim 1, wherein a level of the bit rate corresponds to alevel of a resolution of the video and a level of a frame rate of thevideo, and wherein when the video is played back at a fast speed, thedetermining unit determines, as the bit rate of the video, a bit rate inwhich the resolution or the frame rate is lower than that at a time ofnormal playback.
 4. The information processing apparatus according toclaim 1, wherein a level of the bit rate corresponds to a level of aresolution of the video and a level of a frame rate of the video, andwherein when the video is played back at a slow speed, the determiningunit determines, as the bit rate of the video, a bit rate in which theresolution or the frame rate is higher than that at a time of normalplayback.
 5. The information processing apparatus according to claim 1,wherein the still image requesting unit requests the still image of afile format corresponding to the specified bandwidth.
 6. The informationprocessing apparatus according to claim 1, wherein the still imagerequesting unit requests the still image of a file format correspondingto a purpose of the video, which is set by the at least one hardwareprocessor.
 7. The information processing apparatus according to claim 1,wherein, when the playback starts from beginning of the video, thedetermining unit determines the bit rate without using the data amountand the bandwidth until a set period elapses.
 8. The informationprocessing apparatus according to claim 1, wherein the at least onehardware processor further comprises: an acquiring unit that acquiresbit rate information indicating the plurality of bit rates; and adelivery requesting unit that requests delivery of the video bystreaming at the determined bit rate.
 9. An information processingmethod for an information processing apparatus comprising a at least onehardware processor configured to play a video delivered by streaming, abit rate of the video being changeable during playback, the informationprocessing method comprising: specifying a size of a display region ofthe video; specifying an amount of data temporarily stored for a periodof the video to be next played back; specifying a bandwidth by which thedata is received; determining the bit rate of the video delivered bystreaming and played back based on the size, the data amount, and thebandwidth that are specified; and when an operation of requesting astill image of a certain scene of the video is performed while the videois being played back at a first bit rate, requesting the still image ofthe certain scene in a video at a second bit rate higher than the firstbit rate, wherein a plurality of bit rates are defined for streamdelivery, wherein when a playback time of the video corresponding to thetemporarily stored data is equal to or larger than a threshold value,the determining step includes selecting in descending order, from a bitrate range of the plurality of bit rates that corresponds to thespecified size of the display region, any one of the bit rates that doesnot exceed the specified bandwidth, the determining step includingselecting a highest bit rate within the specified bandwidth from a bitrate range associated with the specified size of the display region, andwherein the determining step also includes determining the selected bitrate as the bit rate of the video that is played back.
 10. Aninformation processing apparatus comprising at least one hardwareprocessor configured to play a video delivered by streaming, a bit rateof the video being changeable during playback, and the at least onehardware processor comprising: a first specifying unit that specifies asize of a display region of the video; a second specifying unit thatspecifies an amount of data temporarily stored for a period of the videoto be next played back; a third specifying unit that specifies abandwidth by which the data is received; a determining unit thatdetermines the bit rate of the video delivered by streaming and playedback based on the size, the data amount, and the bandwidth that arespecified, the determining unit selecting a highest bit rate within thespecified bandwidth from a bit rate range associated with the specifiedsize of a display region, and a still image requesting unit that, whenan operation of requesting a still image of a certain scene of the videois performed while the video is being played back at a first bit rate,requests the still image of the certain scene in a video at a second bitrate higher than the first bit rate.
 11. The information processingapparatus according to claim 1, wherein a plurality of bit rates aredefined in a stream delivery, and wherein when a playback time, forwhich the video indicated by the temporarily stored data having thespecified data amount is played back, is less than a threshold value,the determining unit selects any one of bit rates of up to a set numberin an ascending order within a bit rate range that corresponds to thespecified size of the display region and does not exceed the specifiedbandwidth, and determines the selected bit rate as the bit rate of thevideo that is played back.
 12. The information processing apparatusaccording to claim 1, wherein the display region is configured to bevariable.
 13. The information processing method according to claim 9,wherein the display region is configured to be variable.
 14. Theinformation processing apparatus according to claim 10, wherein thedisplay region is configured to be variable.